package validate

import (
	"regexp"

	"github.com/go-playground/validator/v10"
)

// 校验手机号和邮箱
func checkPhoneAndEmail(f validator.FieldLevel) bool {
	accountPhone := f.Field().String()
	result, err := regexp.MatchString(`^1\d{10}$`, accountPhone)
	if err != nil {
		return false
	}
	if result {
		return true
	}
	accountEmail := f.Field().String()
	result, err = regexp.MatchString(`^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$`, accountEmail)
	if err != nil {
		return false
	}
	return result
}

// 网站基础配置
type BaseConfig struct {
	Type        uint   `gorm:"type:tinyint(1);not null;default:0;comment:类型" json:"type"`             // 配置类型
	ConfigName  string `gorm:"type:varchar(50);not null;default:'';comment:配置名称" json:"configName"`   // 配置名称
	ConfigKey   string `gorm:"type:varchar(50);not null;default:'';comment:配置键名" json:"configKey"`    // 配置键名
	ConfigValue string `gorm:"type:varchar(255);not null;default:'';comment:配置键值" json:"configValue"` // 配置键值
}
